
#ifndef DESIGN_PATTERNS_STATE_HERO_H_
#define DESIGN_PATTERNS_STATE_HERO_H_

class State;

class Hero
{
private:
  State* state_;

public:
  explicit Hero(State* state);

  void Move();

  void set_state(State* s);

  State* get_state();

  ~Hero();
};

#endif //DESIGN_PATTERNS_STATE_HERO_H_
